/**\class UdpHeader
 * UdpHeader.h
 *
 *  Created on: Oct 9, 2008
 *      Author: lc6
 */
#include "iu_wiretap.h"
#ifndef UDPHEADER_H_
#define UDPHEADER_H_
using namespace std;
#include "IpHeader.h"
#define DHCP_PORT 68

class UdpHeader
{
public:
  UdpHeader();
  static vector<int> sourceVector_;
  static Protocol handlePacket(const u_char * packet, int& index );
  /**
   * Print all unique UDP source port and dest port in
   */
  static string printAll();
  virtual
  ~UdpHeader();
private:
  static u_short checksum(u_short len_udp, u_char src_addr[],u_char dest_addr[], bool padding, const u_short *temp);
  static vector<int> destVector_;
  static int right;
  static int wrong;
  static int omit;
};

#endif /* UDPHEADER_H_ */
